package me.flyray.bsin.domain.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * AI大语言模型
 * @TableName ai_llm
 */
@TableName(value ="ai_llm")
@Data
public class LLMParam implements Serializable {
    /**
     * 
     */
    @TableId
    private String serialNo;

    /**
     * 
     */
    private String tenantId;

    /**
     * 商户号
     */
    private String merchantNo;

    /**
     * 
     */
    private String customerNo;

    /**
     * 大语言模型名称：1、GPT-3.5-Turbo 2、Bert 3、qwen-turbo 4、qwen-plus 5、baichuan-7b-v1 6、ChatGLM 7、VertexAiGemini
     */
    private String name;

    /**
     * 大语言模型类型：OpenAI dashScope chatGLM
     */
    private String type;

    /**
     * 描述
     */
    private String description;

    /**
     * 状态： 0：禁用 1:启用
     */
    private String status;

    /**
     * 逻辑删除 0、未删除 1、已删除
     */
    private Boolean delFlag;

    /**
     * 
     */
    private Date updateTime;

    /**
     * 
     */
    private Date createTime;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 
     */
    private String coverImage;

    /**
     * 访问权限： 1-private 2-public
     */
    private String accessAuthority;

    /**
     * 调整模型生成文本时创造性和多样性的超参数:0-1
     */
    private Double temperature;

    /**
     * api秘钥
     */
    private String apiKey;

    /**
     * api请求地址
     */
    private String apiBaseUrl;

    /**
     * 代理地址
     */
    private String proxyUrl;

    /**
     * 代理端口
     */
    private String proxyPort;

    /**
     * 上下文对话数量
     */
    private Integer maxMessages;

    /**
     * 请求最多token
     */
    private Integer maxRequestTokens;

    /**
     * 触发总结的对话数量
     */
    private Integer maxSummaryMessages;

    /**
     * 回复最多token
     */
    private Integer maxRespTokens;

    /**
     * 流式回复： 0-否 1-启用
     */
    private String streaming;

    /**
     * 是否参考搜索结果:通义千问
     */
    private String enableSearch;

    /**
     * 是否为默认： 1-默认
     */
    private Boolean defaultFlag;

    /**
     * 是否可编辑|删除
     */
    private Boolean editable;

    /**
     * 
     */
    private String secretKey;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

}